﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BlueCMS.Core.Data.Query.Conditions
{
    class ConstantNode : ConditionBase, ILHSNode, IEndNode
    {
        public object Value { get; private set; }

        public ConstantNode(object value)
        {
            Value = value;
        }

        IMultiNode ILHSNode.In()
        {
            return (IMultiNode)base.In();
        }

        IMultiNode ILHSNode.NotIn()
        {
            return (IMultiNode)base.NotIn();
        }

        IBinaryNode ILHSNode.Equals()
        {
            return (IBinaryNode)base.Equals();
        }

        IBinaryNode ILHSNode.NotEquals()
        {
            return (IBinaryNode)base.NotEquals();
        }

        IBinaryNode ILHSNode.GreaterThan()
        {
            return (IBinaryNode)base.GreaterThan();
        }

        IBinaryNode ILHSNode.GreaterThanOrEqual()
        {
            return (IBinaryNode)base.GreaterThanOrEqual();
        }

        IBinaryNode ILHSNode.LessThan()
        {
            return (IBinaryNode)base.LessThan();
        }

        IBinaryNode ILHSNode.LessThanOrEqual()
        {
            return (IBinaryNode)base.LessThanOrEqual();
        }

        IBinaryNode ILHSNode.Like()
        {
            return (IBinaryNode)base.Like();
        }

        IBinaryNode ILHSNode.NotLike()
        {
            return (IBinaryNode)base.NotLike();
        }

        IUnaryNode ILHSNode.IsNull()
        {
            return (IUnaryNode)base.IsNull();
        }

        IUnaryNode ILHSNode.IsNotNull()
        {
            return (IUnaryNode)base.IsNotNull();
        }

        IEndNode IEndNode.EndGroup()
        {
            return (IEndNode)base.EndGroup();
        }

        IStartNode IEndNode.And()
        {
            return (IStartNode)base.And();
        }

        IStartNode IEndNode.Or()
        {
            return (IStartNode)base.Or();
        }
    }
}
